home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / man / cmds / jput.man < prev    next >
Encoding:
Text File  |  1992-09-06  |  9.2 KB  |  314 lines

  1. '\"
  2. '\" Copyright 1992 Regents of the University of California
  3. '\" Permission to use, copy, modify, and distribute this
  4. '\" documentation for any purpose and without fee is hereby
  5. '\" granted, provided that this notice appears in all copies.
  6. '\" The University of California makes no representations about
  7. '\" the suitability of this material for any purpose.  It is
  8. '\" provided "as is" without express or implied warranty.
  9. '\" 
  10. '\" $Header: /user5/mottsmth/j/l/jput.man,v 1.8 92/05/07 09:02:14 mottsmth Exp $ SPRITE (Berkeley)
  11. '\" 
  12. .\" The definitions below are for supplemental macros used in Sprite
  13. .\" manual entries.
  14. .\"
  15. .\" .HS name section [date [version]]
  16. .\"    Replacement for .TH in other man pages.  See below for valid
  17. .\"    section names.
  18. .\"
  19. .\" .AP type name in/out [indent]
  20. .\"    Start paragraph describing an argument to a library procedure.
  21. .\"    type is type of argument (int, etc.), in/out is either "in", "out",
  22. .\"    or "in/out" to describe whether procedure reads or modifies arg,
  23. .\"    and indent is equivalent to second arg of .IP (shouldn't ever be
  24. .\"    needed;  use .AS below instead)
  25. .\"
  26. .\" .AS [type [name]]
  27. .\"    Give maximum sizes of arguments for setting tab stops.  Type and
  28. .\"    name are examples of largest possible arguments that will be passed
  29. .\"    to .AP later.  If args are omitted, default tab stops are used.
  30. .\"
  31. .\" .BS
  32. .\"    Start box enclosure.  From here until next .BE, everything will be
  33. .\"    enclosed in one large box.
  34. .\"
  35. .\" .BE
  36. .\"    End of box enclosure.
  37. .\"
  38. .\" .VS
  39. .\"    Begin vertical sidebar, for use in marking newly-changed parts
  40. .\"    of man pages.
  41. .\"
  42. .\" .VE
  43. .\"    End of vertical sidebar.
  44. .\"
  45. .\" .DS
  46. .\"    Begin an indented unfilled display.
  47. .\"
  48. .\" .DE
  49. .\"    End of indented unfilled display.
  50. .\"
  51. '\"    # Heading for Sprite man pages
  52. .de HS
  53. .if '\\$2'cmds'       .TH \\$1 1 \\$3 \\$4
  54. .if '\\$2'lib'        .TH \\$1 3 \\$3 \\$4
  55. .if '\\$2'tcl'        .TH \\$1 3 \\$3 \\$4
  56. .if '\\$2'tk'         .TH \\$1 3 \\$3 \\$4
  57. .if t .wh -1.3i ^B
  58. .nr ^l \\n(.l
  59. .ad b
  60. ..
  61. '\"    # Start an argument description
  62. .de AP
  63. .ie !"\\$4"" .TP \\$4
  64. .el \{\
  65. .   ie !"\\$2"" .TP \\n()Cu
  66. .   el          .TP 15
  67. .\}
  68. .ie !"\\$3"" \{\
  69. .ta \\n()Au \\n()Bu
  70. \&\\$1    \\fI\\$2\\fP    (\\$3)
  71. .\".b
  72. .\}
  73. .el \{\
  74. .br
  75. .ie !"\\$2"" \{\
  76. \&\\$1    \\fI\\$2\\fP
  77. .\}
  78. .el \{\
  79. \&\\fI\\$1\\fP
  80. .\}
  81. .\}
  82. ..
  83. '\"    # define tabbing values for .AP
  84. .de AS
  85. .nr )A 10n
  86. .if !"\\$1"" .nr )A \\w'\\$1'u+3n
  87. .nr )B \\n()Au+15n
  88. .\"
  89. .if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
  90. .nr )C \\n()Bu+\\w'(in/out)'u+2n
  91. ..
  92. '\"    # BS - start boxed text
  93. '\"    # ^y = starting y location
  94. '\"    # ^b = 1
  95. .de BS
  96. .br
  97. .mk ^y
  98. .nr ^b 1u
  99. .if n .nf
  100. .if n .ti 0
  101. .if n \l'\\n(.lu\(ul'
  102. .if n .fi
  103. ..
  104. '\"    # BE - end boxed text (draw box now)
  105. .de BE
  106. .nf
  107. .ti 0
  108. .mk ^t
  109. .ie n \l'\\n(^lu\(ul'
  110. .el \{\
  111. .\"    Draw four-sided box normally, but don't draw top of
  112. .\"    box if the box started on an earlier page.
  113. .ie !\\n(^b-1 \{\
  114. \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
  115. .\}
  116. .el \}\
  117. \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
  118. .\}
  119. .\}
  120. .fi
  121. .br
  122. .nr ^b 0
  123. ..
  124. '\"    # VS - start vertical sidebar
  125. '\"    # ^Y = starting y location
  126. '\"    # ^v = 1 (for troff;  for nroff this doesn't matter)
  127. .de VS
  128. .mk ^Y
  129. .ie n 'mc \s12\(br\s0
  130. .el .nr ^v 1u
  131. ..
  132. '\"    # VE - end of vertical sidebar
  133. .de VE
  134. .ie n 'mc
  135. .el \{\
  136. .ev 2
  137. .nf
  138. .ti 0
  139. .mk ^t
  140. \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
  141. .sp -1
  142. .fi
  143. .ev
  144. .\}
  145. .nr ^v 0
  146. ..
  147. '\"    # Special macro to handle page bottom:  finish off current
  148. '\"    # box/sidebar if in box/sidebar mode, then invoked standard
  149. '\"    # page bottom macro.
  150. .de ^B
  151. .ev 2
  152. 'ti 0
  153. 'nf
  154. .mk ^t
  155. .if \\n(^b \{\
  156. .\"    Draw three-sided box if this is the box's first page,
  157. .\"    draw two sides but no top otherwise.
  158. .ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
  159. .el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
  160. .\}
  161. .if \\n(^v \{\
  162. .nr ^x \\n(^tu+1v-\\n(^Yu
  163. \kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
  164. .\}
  165. .bp
  166. 'fi
  167. .ev
  168. .if \\n(^b \{\
  169. .mk ^y
  170. .nr ^b 2
  171. .\}
  172. .if \\n(^v \{\
  173. .mk ^Y
  174. .\}
  175. ..
  176. '\"    # DS - begin display
  177. .de DS
  178. .RS
  179. .nf
  180. .sp
  181. ..
  182. '\"    # DE - end display
  183. .de DE
  184. .fi
  185. .RE
  186. .sp .5
  187. ..
  188. .HS jput cmds
  189. .BS
  190. '\" Note:  do not modify the .SH NAME line immediately below!
  191. .SH NAME
  192. jput \- Store files in a Jaquith archive.
  193. .SH SYNOPSIS
  194. \fBjput\fR 
  195. [\fB\-arch \fIarchive\fR]
  196. [\fB-server \fIhostname\fR] [\fB-port \fIport\fR]
  197. .br
  198. [\fB\-abs \fItext\fR] [\fB\-absfilter \fIprogram\fR]
  199. [\fB\-absfilteropt \fIoptions\fR] 
  200. [\fB-mod \fImod-date\fR] [\fB-dir\fR] 
  201. [\fB-link\fR] [\fB-sync\fR] [\fB-force\fR]  [\fB-v\fR]
  202. [\fB-prune \fIexpression\fR] [\fB-prunefull \fIexpression\fR]
  203. [\fB-ignore \fIexpression\fR]
  204. .br
  205. [\fB-mail \fImailaddr\fR] [\fB-newvol\fR] [\fB-crossremote\fR]
  206. [\fB-ackfreq \fIcount\fR] [\fB-local\fR]
  207. \fIfilenames\fR
  208. .SH OPTIONS
  209. .IP "\fB\-arch \fIarchive\fR" 14
  210. Name of logical archive.  If none is specified, the environment variable
  211. JARCHIVE is used, if defined, else the default archive is used. 
  212. .IP "\fB\-server \fIhostname\fR" 14 
  213. Specifies host where Jaquith server is running. Defaults
  214. to the environment variable JSERVER.
  215. .IP "\fB\-port \fIport\fR" 14 
  216. Specifies port number where Jaquith server is running. Defaults
  217. to the environment variable JPORT.
  218. .IP "\fB\-mod \fIdate\fR" 14
  219. Dump files modified since specified date.
  220. .IP "\fB\-abs \fItext\fR" 14
  221. Put \fItext\fR in the abstract line for each file.
  222. .IP "\fB\-absfilter \fIprogram\fR" 14
  223. Invoke \fIprogram\fR to generate abstract for each file. The
  224. utility \fIfile\fR is a good choice.
  225. .IP "\fB\-absfilteropt \fIoptions\fR" 14
  226. Option string to be passed to \fIabsfilter\fR program. Must be enclosed
  227. in quotes if it contains spaces. ie. "-a -l".
  228. .IP "\fB\-link\fR"  14
  229. Follow symbolic links. By default, the link is saved, not the
  230. file it points to.
  231. .IP "\fB\-sync\fR"  14
  232. Write data synchronously to tape. Normally data is buffered
  233. on disk. There is a severe performance penalty with this option.
  234. .IP "\fB\-force\fR"  14
  235. Force files to be archived, even if an up-to-date copy
  236. already exists on the archive.
  237. .IP "\fB\-v\fR"  14
  238. Verbose mode. Show filenames as they are processed.
  239. .IP "\fB\-dir\fR"  14
  240. Put the directory and top level contents only. By default jput is recursive.
  241. .IP "\fB\-mail \fImailaddr\fR"  14
  242. Send response by mail to \fImailaddr\fR when operation is complete.
  243. .IP "\fB\-newvol\fR"  14
  244. Force data onto a new volume.  The -sync option is also required.
  245. .IP "\fB\-prune \fIexpression\fR"  14
  246. Subtrees with simple names matching globbing expression \fIexpression\fR
  247. will not be archived, but their names will still appear in the parent
  248. directory list. Default is NULL expression.
  249. .IP "\fB\-prunefull \fIexpression\fR"  14
  250. Subtrees with absolute path names matching globbing expression \fIexpression\fR
  251. will not be archived, but their names will still appear in the parent
  252. directory list. Default is NULL expression.
  253. .IP "\fB\-ignore \fIexpression\fR"  14
  254. Files with simple names matching globbing expression \fIexpression\fR will
  255. not be archived and their names will not be listed in the parent directory.
  256. Default is '{#*#,*~}'.
  257. .IP "\fB\-cross\fR"  14
  258. Sprite only: Enable crossing of remote links. By default jput
  259. stays within the filesystem containing the files on the command line.
  260. .IP "\fB\-ackfreq \fIcount\fR"  14
  261. Server should acknowledge every \fIcount\fR file.
  262. .IP "\fB\-local\fR"  14
  263. Sprite only: The files are local to the server so don't send the
  264. data over the net. This is strictly a Sprite performance hack for
  265. large backups. Invoker must be login id 'root'.
  266. .BE
  267. .SH DESCRIPTION
  268. .PP
  269. \fBJput\fP stores a directory subtree onto an archive
  270. system controlled by the Jaquith server.  The filenames which
  271. match \fIfilenames\fR are stored on the archive if they
  272. have been modified since the last time they were archived, or
  273. if the \fB-force\fR option is used.
  274. .PP
  275. The argument \fIfilepath\fR is interpreted as it would be for
  276. a standard ls command, i.e., it is interpreted relative to
  277. the current working directory, unless it begins with '/'.
  278. .PP
  279. A plain file is considered to be modified if the last modification
  280. time/date as reported by \fBstat\fR is more recent than the date/time
  281. the file was archived, or if the permissions have changed.
  282. A directory is considered modified if the
  283. list of files in it has changed since it was last archived, or if
  284. the permissions have changed.
  285. .PP
  286. The list of filenames is filtered (using Unix globbing
  287. rules, but see BUGS below) by the \fB-prune\fR, \fB-prunefull\fR,
  288. and \fB-ignore\fR expressions. Any filename which matches any of
  289. these expressions is silently skipped. The options are similar
  290. except that pruned filenames will appear in their parent
  291. directory's list whereas ignored files will not.
  292. .PP
  293. \fIdate\fR is of the form \fIDateSpec[:TimeSpec]\fR. \fITimeSpec\fR
  294. is of the form [hh[:mm[:ss]]], and \fIDateSpec\fR is of the form
  295. dd\(hymonth[\(hyyyyy]. Month is the first 3 letters of the month;
  296. all others are numbers. The '/' character is a substitute
  297. for '-' and '.' may be used instead of ':'.
  298. .SH BUGS
  299. Files are stored and indexed by their current pathname so there
  300. is no way to store file \fIfoo\fR as \fIbar\fR.
  301. .PP
  302. There is currently no support for hard links.
  303. .PP
  304. Unlike the shell, the Jaquith globbing characters '*' and '?' match
  305. a '.' in the first position.
  306. .PP
  307. An abstract must be less than 16 kilobytes long.
  308.  
  309. .SH "SEE ALSO"
  310. jaquith jmgr jls jstat jget jctrl jcopy jclean jbuild
  311.  
  312. .SH KEYWORDS
  313. jaquith archive
  314.